package com.ruoyi.cs.base.customer.mapper;

import com.ruoyi.cs.base.customer.domain.CustomerContact;
import com.ruoyi.cs.base.customer.domain.CustomerInfo;

import java.util.List;

/**
 * 客户管理
 * 数据层
 * @author Drj 2021/6/28
 */
public interface CustomerInfoMapper {

    /**
     * 客户信息查询
     * @param customerInfo
     * @return
     */
    public List<CustomerInfo> selectCustomerInfoList(CustomerInfo customerInfo);

    /**
     * 按编号查询
     * @param customerInfoId 客户信息编号
     * @return
     */
    public CustomerInfo selectCustomerInfoById(String customerInfoId);
    /**
     * 客户信息新增
     * @param customerInfo
     * @return
     */
    public int insertCustomerInfo(CustomerInfo customerInfo);

    /**
     * 客户信息更新
     * @param customerInfo
     * @return
     */
    public int updateCustomerInfo(CustomerInfo customerInfo);

    /**
     * 更新客户信息删除标志位
     * @param customerInfo
     * @return
     */
    public int updateCustomerInfoDeleteFlag(CustomerInfo customerInfo);

    /**
     * 查询客户信息对应的所有联系人详细
     * @param customerInfoId 客户信息编号
     * @return
     */
    public List<CustomerContact> selectCustomerContactListById(String customerInfoId);

    /**
     * 查询客户信息对应的指定联系人详细
     * @param customerContactId 客户信息编号
     * @return
     */
    public CustomerContact  selectCustomerContactById(String customerContactId);

    /**
     * 客户联系人详细新增
     * @param customerContact 客户联系人详细
     * @return
     */
    public int insertCustomerContact(CustomerContact customerContact);

    /**
     * 客户联系人详细更新
     * @param customerContact 客户联系人详细
     * @return
     */
    public int updateCustomerContact(CustomerContact customerContact);

    /**
     * 删除客户联系人详细
     * @param customerContactId  客户信息编号
     * @return
     */
    public int deleteCustomerContactById(String customerContactId);


}
